home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / MacOS 8 Resources / Developer Tools / Mac OS 8 Interfaces & Libraries / Interfaces / PInterfaces / OCEStandardMail.p < prev    next >
Text File  |  1996-05-01  |  20KB  |  609 lines

  1. {
  2.      File:        OCEStandardMail.p
  3.  
  4.      Contains:    Apple Open Collaboration Environment Standard Mail Interfaces.
  5.  
  6.      Version:    Technology:    AOCE Toolbox 1.02
  7.                  Release:    Universal Interfaces 3.0d3 on Copland DR1
  8.  
  9.      Copyright:    © 1984-1996 by Apple Computer, Inc.  All rights reserved.
  10.  
  11.      Bugs?:        If you find a problem with this file, send the file and version
  12.                  information (from above) and the problem description to:
  13.  
  14.                      Internet:    apple.bugs@applelink.apple.com
  15.                      AppleLink:    APPLE.BUGS
  16.  
  17. }
  18. {$IFC UNDEFINED UsingIncludes}
  19. {$SETC UsingIncludes := 0}
  20. {$ENDC}
  21.  
  22. {$IFC NOT UsingIncludes}
  23.  UNIT OCEStandardMail;
  24.  INTERFACE
  25. {$ENDC}
  26.  
  27. {$IFC UNDEFINED __OCESTANDARDMAIL__}
  28. {$SETC __OCESTANDARDMAIL__ := 1}
  29.  
  30. {$I+}
  31. {$SETC OCEStandardMailIncludes := UsingIncludes}
  32. {$SETC UsingIncludes := 1}
  33.  
  34. {$IFC UNDEFINED __APPLEEVENTS__}
  35. {$I AppleEvents.p}
  36. {$ENDC}
  37. {$IFC UNDEFINED __DIALOGS__}
  38. {$I Dialogs.p}
  39. {$ENDC}
  40. {$IFC UNDEFINED __FILES__}
  41. {$I Files.p}
  42. {$ENDC}
  43. {$IFC UNDEFINED __WINDOWS__}
  44. {$I Windows.p}
  45. {$ENDC}
  46. {$IFC UNDEFINED __OCEAUTHDIR__}
  47. {$I OCEAuthDir.p}
  48. {$ENDC}
  49. {$IFC UNDEFINED __OCEMAIL__}
  50. {$I OCEMail.p}
  51. {$ENDC}
  52.  
  53. {$PUSH}
  54. {$ALIGN MAC68K}
  55. {$LibExport+}
  56.  
  57. {$IFC FOR_SYSTEM7_ONLY }
  58.  
  59. CONST
  60.     kSMPVersion                    = 1;
  61.     gestaltSMPMailerVersion        = 'malr';
  62.     gestaltSMPSPSendLetterVersion = 'spsl';
  63.     kSMPNativeFormatName        = 'natv';
  64.  
  65.  
  66. TYPE
  67.     LetterSpecPtr = ^LetterSpec;
  68.     LetterSpec = RECORD
  69.         spec:                    ARRAY [0..2] OF LONGINT;
  70.     END;
  71.  
  72.  
  73. CONST
  74.     typeLetterSpec                = 'lttr';
  75.  
  76. {     Wildcard used for filtering letter types.  }
  77.     FilterAnyLetter                = 'ltr*';
  78.     FilterAppleLetterContent    = 'ltc*';
  79.     FilterImageContent            = 'lti*';
  80.  
  81.  
  82. TYPE
  83.     LetterDescriptorPtr = ^LetterDescriptor;
  84.     LetterDescriptor = RECORD
  85.         onDisk:                    BOOLEAN;
  86.         filler1:                BOOLEAN;
  87.         CASE INTEGER OF
  88.         0: (
  89.             fileSpec:            FSSpec;
  90.             );
  91.         1: (
  92.             mailboxSpec:        LetterSpec;
  93.             );
  94.     END;
  95.  
  96. {
  97. SMPPSendAs values.  You may add the following values together to determine how the
  98. file is sent, but you may not set both kSMPSendAsEnclosureMask and kSMPSendFileOnlyMask.  This
  99. will allow you to send the letter as an image so that it will work with fax gateways
  100. and send as an enclosure as well.
  101. }
  102.  
  103. CONST
  104.     kSMPSendAsEnclosureBit        = 0;                            {  Appears as letter with enclosures  }
  105.     kSMPSendFileOnlyBit            = 1;                            {  Appears as a file in mailbox.  }
  106.     kSMPSendAsImageBit            = 2;                            {  Content imaged in letter  }
  107.  
  108. {  Values of SMPPSendAs  }
  109.     kSMPSendAsEnclosureMask        = $01;
  110.     kSMPSendFileOnlyMask        = $02;
  111.     kSMPSendAsImageMask            = $04;
  112.  
  113.  
  114. TYPE
  115.     SMPPSendAs                            = Byte;
  116. {  Send Package Structures  }
  117.     SMPDrawImageProcPtr = ProcPtr;  { PROCEDURE SMPDrawImage(refcon: LONGINT; inColor: BOOLEAN); }
  118.  
  119.     SMPDrawImageUPP = UniversalProcPtr;
  120.  
  121. CONST
  122.     uppSMPDrawImageProcInfo = $000001C0;
  123.  
  124. FUNCTION NewSMPDrawImageProc(userRoutine: SMPDrawImageProcPtr): SMPDrawImageUPP;
  125.     {$IFC NOT GENERATINGCFM }
  126.     INLINE $2E9F;
  127.     {$ENDC}
  128.  
  129. PROCEDURE CallSMPDrawImageProc(refcon: LONGINT; inColor: BOOLEAN; userRoutine: SMPDrawImageUPP);
  130.     {$IFC NOT GENERATINGCFM}
  131.     INLINE $205F, $4E90;
  132.     {$ENDC}
  133.  
  134. TYPE
  135.     SMPRecipientDescriptorPtr = ^SMPRecipientDescriptor;
  136.     SMPRecipientDescriptor = RECORD
  137.         next:                    SMPRecipientDescriptorPtr;                {   Q-Link.  }
  138.         result:                    OSErr;                                    {   result code when using the object.  }
  139.         recipient:                OCEPackedRecipientPtr;                    {   Pointer to a Packed Address.  }
  140.         size:                    LONGINT;                                {   length of recipient in bytes.  }
  141.         theAddress:                MailRecipient;                            {   structure points into recipient and theRID.  }
  142.         theRID:                    RecordID;                                {   structure points into recipient.  }
  143.     END;
  144.  
  145.     SMPEnclosureDescriptorPtr = ^SMPEnclosureDescriptor;
  146.     SMPEnclosureDescriptor = RECORD
  147.         next:                    SMPEnclosureDescriptorPtr;
  148.         result:                    OSErr;
  149.         fileSpec:                FSSpec;
  150.         fileCreator:            OSType;                                    {   Creator of this enclosure.  }
  151.         fileType:                OSType;                                    {   File Type of this enclosure.  }
  152.     END;
  153.  
  154.     SMPLetterPBPtr = ^SMPLetterPB;
  155.     SMPLetterPB = RECORD
  156.         result:                    OSErr;                                    {  result of operation  }
  157.         subject:                RStringPtr;                                {  RString  }
  158.         senderIdentity:            AuthIdentity;                            {  Letter is sent from this Identity  }
  159.         toList:                    SMPRecipientDescriptorPtr;                {  Pointer to linked list  }
  160.         ccList:                    SMPRecipientDescriptorPtr;                {  Pointer to linked list  }
  161.         bccList:                SMPRecipientDescriptorPtr;                {  Pointer to linked list  }
  162.         script:                    ScriptCode;                                {  Identifier for language  }
  163.         textSize:                Size;                                    {  length of body data  }
  164.         textBuffer:                Ptr;                                    {  body of the letter  }
  165.         sendAs:                    SInt8;                                    {  Send as Letter,Enclosure,Image  }
  166.         padByte:                SInt8;
  167.         enclosures:                SMPEnclosureDescriptorPtr;                {  files to be enclosed  }
  168.         drawImageProc:            SMPDrawImageUPP;                        {  For imaging  }
  169.         imageRefCon:            LONGINT;                                {  For imaging  }
  170.         supportsColor:            BOOLEAN;                                {  For imaging - set to true if you application supports color imaging  }
  171.         filler1:                BOOLEAN;
  172.     END;
  173.  
  174.  
  175. CONST
  176.     kSMPAppMustHandleEventBit    = 0;
  177.     kSMPAppShouldIgnoreEventBit    = 1;
  178.     kSMPContractedBit            = 2;
  179.     kSMPExpandedBit                = 3;
  180.     kSMPMailerBecomesTargetBit    = 4;
  181.     kSMPAppBecomesTargetBit        = 5;
  182.     kSMPCursorOverMailerBit        = 6;
  183.     kSMPCreateCopyWindowBit        = 7;
  184.     kSMPDisposeCopyWindowBit    = 8;
  185.  
  186. {  Values of SMPMailerResult  }
  187.     kSMPAppMustHandleEventMask    = $01;
  188.     kSMPAppShouldIgnoreEventMask = $02;
  189.     kSMPContractedMask            = $04;
  190.     kSMPExpandedMask            = $08;
  191.     kSMPMailerBecomesTargetMask    = $10;
  192.     kSMPAppBecomesTargetMask    = $20;
  193.     kSMPCursorOverMailerMask    = $40;
  194.     kSMPCreateCopyWindowMask    = $80;
  195.     kSMPDisposeCopyWindowMask    = $0100;
  196.  
  197.  
  198. TYPE
  199.     SMPMailerResult                        = LONGINT;
  200. {  Values of SMPMailerComponent }
  201.  
  202. CONST
  203.     kSMPOther                    = -1;
  204.     kSMPFrom                    = 32;
  205.     kSMPTo                        = 20;
  206.     kSMPRegarding                = 22;
  207.     kSMPSendDateTime            = 29;
  208.     kSMPAttachments                = 26;
  209.     kSMPAddressOMatic            = 16;
  210.  
  211.  
  212. TYPE
  213.     SMPMailerComponent                    = LONGINT;
  214.  
  215. CONST
  216.     kSMPToAddress                = 13;
  217.     kSMPCCAddress                = 14;
  218.     kSMPBCCAddress                = 15;
  219.  
  220.  
  221. TYPE
  222.     SMPAddressType                        = MailAttributeID;
  223.  
  224. CONST
  225.     kSMPUndoCommand                = 0;
  226.     kSMPCutCommand                = 1;
  227.     kSMPCopyCommand                = 2;
  228.     kSMPPasteCommand            = 3;
  229.     kSMPClearCommand            = 4;
  230.     kSMPSelectAllCommand        = 5;
  231.  
  232.  
  233. TYPE
  234.     SMPEditCommand                        = INTEGER;
  235.  
  236. CONST
  237.     kSMPUndoDisabled            = 0;
  238.     kSMPAppMayUndo                = 1;
  239.     kSMPMailerUndo                = 2;
  240.  
  241.  
  242. TYPE
  243.     SMPUndoState                        = INTEGER;
  244. {
  245. SMPSendFormatMask:
  246.  
  247. Bitfield indicating which combinations of formats are included in,
  248. should be included or, or can be included in a letter.
  249. }
  250.  
  251. CONST
  252.     kSMPNativeBit                = 0;
  253.     kSMPImageBit                = 1;
  254.     kSMPStandardInterchangeBit    = 2;
  255.  
  256. {  Values of SMPSendFormatMask  }
  257.     kSMPNativeMask                = $01;
  258.     kSMPImageMask                = $02;
  259.     kSMPStandardInterchangeMask    = $04;
  260.  
  261.  
  262. TYPE
  263.     SMPSendFormatMask                    = LONGINT;
  264. {
  265.     Pseudo-events passed to the clients filter proc for initialization and cleanup.
  266. }
  267.  
  268. CONST
  269.     kSMPSendOptionsStart        = -1;
  270.     kSMPSendOptionsEnd            = -2;
  271.  
  272. {
  273. SMPSendFormatMask:
  274.  
  275. Structure describing the format of a letter.  If kSMPNativeMask bit is set, the whichNativeFormat field indicates which of the client-defined formats to use.
  276. }
  277.  
  278. TYPE
  279.     SMPSendFormatPtr = ^SMPSendFormat;
  280.     SMPSendFormat = RECORD
  281.         whichFormats:            SMPSendFormatMask;
  282.         whichNativeFormat:        INTEGER;                                {  0 based  }
  283.     END;
  284.  
  285.     SMPLetterInfoPtr = ^SMPLetterInfo;
  286.     SMPLetterInfo = RECORD
  287.         letterCreator:            OSType;
  288.         letterType:                OSType;
  289.         subject:                RString32;
  290.         sender:                    RString32;
  291.     END;
  292.  
  293.  
  294. CONST
  295.     kSMPSave                    = 0;
  296.     kSMPSaveAs                    = 1;
  297.     kSMPSaveACopy                = 2;
  298.  
  299.  
  300. TYPE
  301.     SMPSaveType                            = INTEGER;
  302.     FrontWindowProcPtr = ProcPtr;  { FUNCTION FrontWindow(clientData: LONGINT): WindowPtr; }
  303.  
  304.     PrepareMailerForDrawingProcPtr = ProcPtr;  { PROCEDURE PrepareMailerForDrawing(window: WindowPtr; clientData: LONGINT); }
  305.  
  306.     FrontWindowUPP = UniversalProcPtr;
  307.     PrepareMailerForDrawingUPP = UniversalProcPtr;
  308.  
  309. CONST
  310.     uppFrontWindowProcInfo = $000000F0;
  311.     uppPrepareMailerForDrawingProcInfo = $000003C0;
  312.  
  313. FUNCTION NewFrontWindowProc(userRoutine: FrontWindowProcPtr): FrontWindowUPP;
  314.     {$IFC NOT GENERATINGCFM }
  315.     INLINE $2E9F;
  316.     {$ENDC}
  317.  
  318. FUNCTION NewPrepareMailerForDrawingProc(userRoutine: PrepareMailerForDrawingProcPtr): PrepareMailerForDrawingUPP;
  319.     {$IFC NOT GENERATINGCFM }
  320.     INLINE $2E9F;
  321.     {$ENDC}
  322.  
  323. FUNCTION CallFrontWindowProc(clientData: LONGINT; userRoutine: FrontWindowUPP): WindowPtr;
  324.     {$IFC NOT GENERATINGCFM}
  325.     INLINE $205F, $4E90;
  326.     {$ENDC}
  327.  
  328. PROCEDURE CallPrepareMailerForDrawingProc(window: WindowPtr; clientData: LONGINT; userRoutine: PrepareMailerForDrawingUPP);
  329.     {$IFC NOT GENERATINGCFM}
  330.     INLINE $205F, $4E90;
  331.     {$ENDC}
  332.  
  333. TYPE
  334.     SendOptionsFilterProcPtr = ProcPtr;  { FUNCTION SendOptionsFilter(theDialog: DialogRef; VAR theEvent: EventRecord; itemHit: INTEGER; clientData: LONGINT): BOOLEAN; }
  335.  
  336.     SendOptionsFilterUPP = UniversalProcPtr;
  337.  
  338. CONST
  339.     uppSendOptionsFilterProcInfo = $00003BD0;
  340.  
  341. FUNCTION NewSendOptionsFilterProc(userRoutine: SendOptionsFilterProcPtr): SendOptionsFilterUPP;
  342.     {$IFC NOT GENERATINGCFM }
  343.     INLINE $2E9F;
  344.     {$ENDC}
  345.  
  346. FUNCTION CallSendOptionsFilterProc(theDialog: DialogRef; VAR theEvent: EventRecord; itemHit: INTEGER; clientData: LONGINT; userRoutine: SendOptionsFilterUPP): BOOLEAN;
  347.     {$IFC NOT GENERATINGCFM}
  348.     INLINE $205F, $4E90;
  349.     {$ENDC}
  350.  
  351. TYPE
  352.     SMPMailerStatePtr = ^SMPMailerState;
  353.     SMPMailerState = RECORD
  354.         mailerCount:            INTEGER;
  355.         currentMailer:            INTEGER;
  356.         upperLeft:                Point;
  357.         hasBeenReceived:        BOOLEAN;
  358.         isTarget:                BOOLEAN;
  359.         isExpanded:                BOOLEAN;
  360.         canMoveToTrash:            BOOLEAN;
  361.         canTag:                    BOOLEAN;
  362.         padByte2:                SInt8;
  363.         changeCount:            LONGINT;
  364.         targetComponent:        SMPMailerComponent;
  365.         canCut:                    BOOLEAN;
  366.         canCopy:                BOOLEAN;
  367.         canPaste:                BOOLEAN;
  368.         canClear:                BOOLEAN;
  369.         canSelectAll:            BOOLEAN;
  370.         padByte3:                SInt8;
  371.         undoState:                SMPUndoState;
  372.         undoWhat:                Str63;
  373.     END;
  374.  
  375.     SMPSendOptionsPtr = ^SMPSendOptions;
  376.     SMPSendOptions = RECORD
  377.         signWhenSent:            BOOLEAN;
  378.         priority:                SInt8;
  379.     END;
  380.  
  381.     SMPSendOptionsHandle                = ^SMPSendOptionsPtr;
  382.     SMPCloseOptionsPtr = ^SMPCloseOptions;
  383.     SMPCloseOptions = RECORD
  384.         moveToTrash:            BOOLEAN;
  385.         addTag:                    BOOLEAN;
  386.         tag:                    RString32;
  387.     END;
  388.  
  389. {
  390. ----------------------------------------------------------------------------------------
  391.     Send Package Routines
  392. ----------------------------------------------------------------------------------------
  393. }
  394. FUNCTION SMPSendLetter(theLetter: SMPLetterPBPtr): OSErr;
  395.     {$IFC NOT GENERATINGCFM}
  396.     INLINE $203C, $0002, $01F4, $AA5D;
  397.     {$ENDC}
  398. FUNCTION SMPNewPage(VAR newHeader: OpenCPicParams): OSErr;
  399.     {$IFC NOT GENERATINGCFM}
  400.     INLINE $203C, $0002, $0834, $AA5D;
  401.     {$ENDC}
  402. FUNCTION SMPImageErr: OSErr;
  403.     {$IFC NOT GENERATINGCFM}
  404.     INLINE $203C, $0000, $0835, $AA5D;
  405.     {$ENDC}
  406. FUNCTION SMPResolveToRecipient(dsSpec: PackedDSSpecPtr; VAR recipientList: SMPRecipientDescriptorPtr; identity: AuthIdentity): OSErr;
  407.     {$IFC NOT GENERATINGCFM}
  408.     INLINE $203C, $0006, $044C, $AA5D;
  409.     {$ENDC}
  410. FUNCTION SMPInitMailer(mailerVersion: LONGINT): OSErr;
  411.     {$IFC NOT GENERATINGCFM}
  412.     INLINE $203C, $0002, $1285, $AA5D;
  413.     {$ENDC}
  414. FUNCTION SMPGetDimensions(VAR width: INTEGER; VAR contractedHeight: INTEGER; VAR expandedHeight: INTEGER): OSErr;
  415.     {$IFC NOT GENERATINGCFM}
  416.     INLINE $203C, $0006, $125C, $AA5D;
  417.     {$ENDC}
  418. FUNCTION SMPGetTabInfo(VAR firstTab: SMPMailerComponent; VAR lastTab: SMPMailerComponent): OSErr;
  419.     {$IFC NOT GENERATINGCFM}
  420.     INLINE $203C, $0004, $1274, $AA5D;
  421.     {$ENDC}
  422. FUNCTION SMPNewMailer(window: WindowPtr; upperLeft: Point; canContract: BOOLEAN; initiallyExpanded: BOOLEAN; identity: AuthIdentity; prepareMailerForDrawingCB: PrepareMailerForDrawingUPP; clientData: LONGINT): OSErr;
  423.     {$IFC NOT GENERATINGCFM}
  424.     INLINE $203C, $000C, $125D, $AA5D;
  425.     {$ENDC}
  426. FUNCTION SMPPrepareToClose(window: WindowPtr): OSErr;
  427.     {$IFC NOT GENERATINGCFM}
  428.     INLINE $203C, $0002, $1287, $AA5D;
  429.     {$ENDC}
  430. FUNCTION SMPCloseOptionsDialog(window: WindowPtr; closeOptions: SMPCloseOptionsPtr): OSErr;
  431.     {$IFC NOT GENERATINGCFM}
  432.     INLINE $203C, $0004, $1288, $AA5D;
  433.     {$ENDC}
  434. FUNCTION SMPTagDialog(window: WindowPtr; VAR theTag: RString32): OSErr;
  435.     {$IFC NOT GENERATINGCFM}
  436.     INLINE $203C, $0004, $128B, $AA5D;
  437.     {$ENDC}
  438. FUNCTION SMPDisposeMailer(window: WindowPtr; closeOptions: SMPCloseOptionsPtr): OSErr;
  439.     {$IFC NOT GENERATINGCFM}
  440.     INLINE $203C, $0004, $125E, $AA5D;
  441.     {$ENDC}
  442. FUNCTION SMPMailerEvent({CONST}VAR event: EventRecord; VAR whatHappened: SMPMailerResult; frontWindowCB: FrontWindowUPP; clientData: LONGINT): OSErr;
  443.     {$IFC NOT GENERATINGCFM}
  444.     INLINE $203C, $0008, $125F, $AA5D;
  445.     {$ENDC}
  446. FUNCTION SMPClearUndo(window: WindowPtr): OSErr;
  447.     {$IFC NOT GENERATINGCFM}
  448.     INLINE $203C, $0002, $1275, $AA5D;
  449.     {$ENDC}
  450. FUNCTION SMPMailerEditCommand(window: WindowPtr; command: SMPEditCommand; VAR whatHappened: SMPMailerResult): OSErr;
  451.     {$IFC NOT GENERATINGCFM}
  452.     INLINE $203C, $0005, $1260, $AA5D;
  453.     {$ENDC}
  454. FUNCTION SMPMailerForward(window: WindowPtr; from: AuthIdentity): OSErr;
  455.     {$IFC NOT GENERATINGCFM}
  456.     INLINE $203C, $0004, $1261, $AA5D;
  457.     {$ENDC}
  458. FUNCTION SMPMailerReply(originalLetter: WindowPtr; newLetter: WindowPtr; replyToAll: BOOLEAN; upperLeft: Point; canContract: BOOLEAN; initiallyExpanded: BOOLEAN; identity: AuthIdentity; prepareMailerForDrawingCB: PrepareMailerForDrawingUPP; clientData: LONGINT): OSErr;
  459.     {$IFC NOT GENERATINGCFM}
  460.     INLINE $203C, $000F, $1262, $AA5D;
  461.     {$ENDC}
  462. FUNCTION SMPGetMailerState(window: WindowPtr; VAR itsState: SMPMailerState): OSErr;
  463.     {$IFC NOT GENERATINGCFM}
  464.     INLINE $203C, $0004, $1263, $AA5D;
  465.     {$ENDC}
  466. FUNCTION SMPSendOptionsDialog(window: WindowPtr; VAR documentName: Str255; VAR nativeFormatNames: StringPtr; nameCount: INTEGER; canSend: SMPSendFormatMask; VAR currentFormat: SMPSendFormat; filterProc: SendOptionsFilterUPP; clientData: LONGINT; VAR shouldSend: SMPSendFormat; sendOptions: SMPSendOptionsPtr): OSErr;
  467.     {$IFC NOT GENERATINGCFM}
  468.     INLINE $203C, $0013, $1388, $AA5D;
  469.     {$ENDC}
  470. FUNCTION SMPPrepareCoverPages(window: WindowPtr; VAR pageCount: INTEGER): OSErr;
  471.     {$IFC NOT GENERATINGCFM}
  472.     INLINE $203C, $0004, $1264, $AA5D;
  473.     {$ENDC}
  474. FUNCTION SMPDrawNthCoverPage(window: WindowPtr; pageNumber: INTEGER; doneDrawingCoverPages: BOOLEAN): OSErr;
  475.     {$IFC NOT GENERATINGCFM}
  476.     INLINE $203C, $0004, $1265, $AA5D;
  477.     {$ENDC}
  478. FUNCTION SMPPrepareToChange(window: WindowPtr): OSErr;
  479.     {$IFC NOT GENERATINGCFM}
  480.     INLINE $203C, $0002, $1289, $AA5D;
  481.     {$ENDC}
  482. FUNCTION SMPContentChanged(window: WindowPtr): OSErr;
  483.     {$IFC NOT GENERATINGCFM}
  484.     INLINE $203C, $0002, $126F, $AA5D;
  485.     {$ENDC}
  486. FUNCTION SMPBeginSave(window: WindowPtr; {CONST}VAR diskLetter: FSSpec; creator: OSType; fileType: OSType; saveType: SMPSaveType; VAR mustAddContent: BOOLEAN): OSErr;
  487.     {$IFC NOT GENERATINGCFM}
  488.     INLINE $203C, $000B, $1266, $AA5D;
  489.     {$ENDC}
  490. FUNCTION SMPEndSave(window: WindowPtr; okToSave: BOOLEAN): OSErr;
  491.     {$IFC NOT GENERATINGCFM}
  492.     INLINE $203C, $0003, $1270, $AA5D;
  493.     {$ENDC}
  494. FUNCTION SMPBeginSend(window: WindowPtr; creator: OSType; fileType: OSType; sendOptions: SMPSendOptionsPtr; VAR mustAddContent: BOOLEAN): OSErr;
  495.     {$IFC NOT GENERATINGCFM}
  496.     INLINE $203C, $000A, $1267, $AA5D;
  497.     {$ENDC}
  498. FUNCTION SMPEndSend(window: WindowPtr; okToSend: BOOLEAN): OSErr;
  499.     {$IFC NOT GENERATINGCFM}
  500.     INLINE $203C, $0003, $1271, $AA5D;
  501.     {$ENDC}
  502. FUNCTION SMPOpenLetter({CONST}VAR letter: LetterDescriptor; window: WindowPtr; upperLeft: Point; canContract: BOOLEAN; initiallyExpanded: BOOLEAN; prepareMailerForDrawingCB: PrepareMailerForDrawingUPP; clientData: LONGINT): OSErr;
  503.     {$IFC NOT GENERATINGCFM}
  504.     INLINE $203C, $000C, $1268, $AA5D;
  505.     {$ENDC}
  506. FUNCTION SMPAddMainEnclosure(window: WindowPtr; {CONST}VAR enclosure: FSSpec): OSErr;
  507.     {$IFC NOT GENERATINGCFM}
  508.     INLINE $203C, $0004, $127D, $AA5D;
  509.     {$ENDC}
  510. FUNCTION SMPGetMainEnclosureFSSpec(window: WindowPtr; VAR enclosureDir: FSSpec): OSErr;
  511.     {$IFC NOT GENERATINGCFM}
  512.     INLINE $203C, $0004, $127E, $AA5D;
  513.     {$ENDC}
  514. FUNCTION SMPAddContent(window: WindowPtr; segmentType: MailSegmentType; appendFlag: BOOLEAN; buffer: UNIV Ptr; bufferSize: LONGINT; textScrap: StScrpPtr; startNewScript: BOOLEAN; script: ScriptCode): OSErr;
  515.     {$IFC NOT GENERATINGCFM}
  516.     INLINE $203C, $000C, $127A, $AA5D;
  517.     {$ENDC}
  518. FUNCTION SMPReadContent(window: WindowPtr; segmentTypeMask: MailSegmentMask; buffer: UNIV Ptr; bufferSize: LONGINT; VAR dataSize: LONGINT; textScrap: StScrpPtr; VAR script: ScriptCode; VAR segmentType: MailSegmentType; VAR endOfScript: BOOLEAN; VAR endOfSegment: BOOLEAN; VAR endOfContent: BOOLEAN; VAR segmentLength: LONGINT; VAR segmentID: LONGINT): OSErr;
  519.     {$IFC NOT GENERATINGCFM}
  520.     INLINE $203C, $0019, $127B, $AA5D;
  521.     {$ENDC}
  522. FUNCTION SMPGetFontNameFromLetter(window: WindowPtr; fontNum: INTEGER; VAR fontName: Str255; doneWithFontTable: BOOLEAN): OSErr;
  523.     {$IFC NOT GENERATINGCFM}
  524.     INLINE $203C, $0006, $127C, $AA5D;
  525.     {$ENDC}
  526. FUNCTION SMPAddBlock(window: WindowPtr; {CONST}VAR blockType: OCECreatorType; append: BOOLEAN; buffer: UNIV Ptr; bufferSize: LONGINT; mode: MailBlockMode; offset: LONGINT): OSErr;
  527.     {$IFC NOT GENERATINGCFM}
  528.     INLINE $203C, $000C, $127F, $AA5D;
  529.     {$ENDC}
  530. FUNCTION SMPReadBlock(window: WindowPtr; {CONST}VAR blockType: OCECreatorType; blockIndex: INTEGER; buffer: UNIV Ptr; bufferSize: LONGINT; dataOffset: LONGINT; VAR dataSize: LONGINT; VAR endOfBlock: BOOLEAN; VAR remaining: LONGINT): OSErr;
  531.     {$IFC NOT GENERATINGCFM}
  532.     INLINE $203C, $0011, $1280, $AA5D;
  533.     {$ENDC}
  534. FUNCTION SMPEnumerateBlocks(window: WindowPtr; startIndex: INTEGER; buffer: UNIV Ptr; bufferSize: LONGINT; VAR dataSize: LONGINT; VAR nextIndex: INTEGER; VAR more: BOOLEAN): OSErr;
  535.     {$IFC NOT GENERATINGCFM}
  536.     INLINE $203C, $000D, $1281, $AA5D;
  537.     {$ENDC}
  538. FUNCTION SMPDrawMailer(window: WindowPtr): OSErr;
  539.     {$IFC NOT GENERATINGCFM}
  540.     INLINE $203C, $0002, $1269, $AA5D;
  541.     {$ENDC}
  542. FUNCTION SMPSetSubject(window: WindowPtr; {CONST}VAR text: RString): OSErr;
  543.     {$IFC NOT GENERATINGCFM}
  544.     INLINE $203C, $0004, $126B, $AA5D;
  545.     {$ENDC}
  546. FUNCTION SMPSetFromIdentity(window: WindowPtr; from: AuthIdentity): OSErr;
  547.     {$IFC NOT GENERATINGCFM}
  548.     INLINE $203C, $0004, $126C, $AA5D;
  549.     {$ENDC}
  550. FUNCTION SMPAddAddress(window: WindowPtr; addrType: SMPAddressType; VAR address: OCEPackedRecipient): OSErr;
  551.     {$IFC NOT GENERATINGCFM}
  552.     INLINE $203C, $0005, $126D, $AA5D;
  553.     {$ENDC}
  554. FUNCTION SMPAddAttachment(window: WindowPtr; {CONST}VAR attachment: FSSpec): OSErr;
  555.     {$IFC NOT GENERATINGCFM}
  556.     INLINE $203C, $0004, $126E, $AA5D;
  557.     {$ENDC}
  558. FUNCTION SMPAttachDialog(window: WindowPtr): OSErr;
  559.     {$IFC NOT GENERATINGCFM}
  560.     INLINE $203C, $0002, $1276, $AA5D;
  561.     {$ENDC}
  562. FUNCTION SMPExpandOrContract(window: WindowPtr; expand: BOOLEAN): OSErr;
  563.     {$IFC NOT GENERATINGCFM}
  564.     INLINE $203C, $0003, $1272, $AA5D;
  565.     {$ENDC}
  566. FUNCTION SMPMoveMailer(window: WindowPtr; dh: INTEGER; dv: INTEGER): OSErr;
  567.     {$IFC NOT GENERATINGCFM}
  568.     INLINE $203C, $0004, $126A, $AA5D;
  569.     {$ENDC}
  570. FUNCTION SMPBecomeTarget(window: WindowPtr; becomeTarget: BOOLEAN; whichField: SMPMailerComponent): OSErr;
  571.     {$IFC NOT GENERATINGCFM}
  572.     INLINE $203C, $0005, $1273, $AA5D;
  573.     {$ENDC}
  574. FUNCTION SMPGetComponentSize(window: WindowPtr; whichMailer: INTEGER; whichField: SMPMailerComponent; VAR size: INTEGER): OSErr;
  575.     {$IFC NOT GENERATINGCFM}
  576.     INLINE $203C, $0007, $1277, $AA5D;
  577.     {$ENDC}
  578. FUNCTION SMPGetComponentInfo(window: WindowPtr; whichMailer: INTEGER; whichField: SMPMailerComponent; buffer: UNIV Ptr): OSErr;
  579.     {$IFC NOT GENERATINGCFM}
  580.     INLINE $203C, $0007, $1278, $AA5D;
  581.     {$ENDC}
  582. FUNCTION SMPGetListItemInfo(window: WindowPtr; whichMailer: INTEGER; whichField: SMPMailerComponent; buffer: UNIV Ptr; bufferLength: LONGINT; startItem: INTEGER; VAR itemCount: INTEGER; VAR nextItem: INTEGER; VAR more: BOOLEAN): OSErr;
  583.     {$IFC NOT GENERATINGCFM}
  584.     INLINE $203C, $0010, $1279, $AA5D;
  585.     {$ENDC}
  586. FUNCTION SMPImage(window: WindowPtr; drawImageProc: SMPDrawImageUPP; imageRefCon: LONGINT; supportsColor: BOOLEAN): OSErr;
  587.     {$IFC NOT GENERATINGCFM}
  588.     INLINE $203C, $0007, $1282, $AA5D;
  589.     {$ENDC}
  590. FUNCTION SMPGetNextLetter(VAR typesList: OSType; numTypes: INTEGER; VAR adjacentLetter: LetterDescriptor): OSErr;
  591.     {$IFC NOT GENERATINGCFM}
  592.     INLINE $203C, $0005, $1286, $AA5D;
  593.     {$ENDC}
  594. FUNCTION SMPGetLetterInfo(VAR mailboxSpec: LetterSpec; VAR info: SMPLetterInfo): OSErr;
  595.     {$IFC NOT GENERATINGCFM}
  596.     INLINE $203C, $0004, $128A, $AA5D;
  597.     {$ENDC}
  598. {$ENDC}
  599. {$ALIGN RESET}
  600. {$POP}
  601.  
  602. {$SETC UsingIncludes := OCEStandardMailIncludes}
  603.  
  604. {$ENDC} {__OCESTANDARDMAIL__}
  605.  
  606. {$IFC NOT UsingIncludes}
  607.  END.
  608. {$ENDC}
  609.